Extensible Stylesheet Language Transformations
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
top
XSLT (eXtensible Stylesheet Language Transformations), dΓ©fini au sein de la recommandation XSL du W3C, est un langage de transformation XML de type fonctionnel. Il permet notamment de transformer un document XML dans un autre format, tel PDF ou encore HTML pour Γͺtre affichΓ© comme une page web.
Contents
β’ Description
β’ Exemple
β’ Voir aussi
β’ RΓ©fΓ©rences
β’ Liens externes
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Description
L'objectif principal est la transformation d'un document XML vers un autre schema ou format (XHTML, XSL-FO, HTML, etc.). Cependant, le langage XSLT permet aussi les transformations vers tout autre type de document, au format texte ou dans un format binaire (bien que ceci ne soit pas nativement prΓ©vu par la recommandation XSLT). Γtant donnΓ© deux entrΓ©es, un document XML Γ transformer et un document XSLT, un analyseur XSLT (XSLT processor) produit un fichier de sortie au format dΓ©sirΓ©.
XSLT s'appuie sur XPath (une autre partie de la recommandation XSL) pour dΓ©signer une partie d'un arbre XML. En pratique, le langage XSLT est lui-mΓͺme exprimΓ© sous forme de document XML :
<?xml version="1.0"Β ?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0">
<xsl:output method="xml" indent="yes"/>
<xsl:template match="person">
<name username="{@username}">
<xsl:value-of select="name" />
</name>
</xsl:template>
</xsl:stylesheet>
L'une de ses principales particularitΓ©s est d'Γͺtre centrΓ© sur les donnΓ©es. Un XSLT doit s'appuyer sur un XML, c'est un couple obligatoire, et on ne peut crΓ©er en XSLT que des boucles parcourant des donnΓ©es sΓ©lectionnΓ©es par XPath.
Exemple
| Fichier XML d'entrΓ©e <?xml version="1.0β¦ |
|---|
| β |
| Fichier XML rΓ©sultat <?xml version="1.0β¦ |
ImplΓ©mentations d'analyseurs XSLT
β’ AltovaXML : par Altova, implΓ©mentation de XSLT 1.0 et XSLT 2.0
⒠DIXml : une bibliothèque Delphi
β’ Gestalt : par Colin Paul Adams, implΓ©mentation en Eiffel de XSLT 2.0
β’ Libxslt (en) : par GNOME, implΓ©mentation en C de XSLT 1.0; l'utilitaire en ligne de commande xsltproc l'utilise.
β’ QuiXSLT : par Innovimax et INRIA en Java pour XSLT 3.0 avec Streamingcite-ref-2[2]
β’ Saxon XSLT (en) : par Michael Kay, Saxon existe en Java et .Net pour XSLT 2.0 et 3.0 (avec validation de XML Schema)
⒠System.Xml.Xsl : en parallèle par Microsoft et Novell pour les différentes implémentation du Framework .NET
Voir aussi
Articles connexes
RΓ©fΓ©rences
cite-note-11. β Β« PHP: XSL - Manual Β», sur php.net
cite-note-22. β 2013Β« QuiXSLT Β», 15 novembre 2013
Liens externes
β’ (en) La recommandation W3C XSLT 1.0 du 16 novembre 1999
β’ (fr) Traduction franΓ§aise de la recommandation
β’ (en) La recommandation W3C XSLT 2.0 du 23 janvier 2007
β’ (en) La recommandation W3C XSLT 3.0 du 8 juin 2017
β’ Portail de la programmation informatique